/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package dao;

import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
import util.HibernateUtil;

import model.Usuario;
/**
 *
 * @author Fran
 */
public class UsuarioDAO {
    
    public UsuarioDAO(){
            
        session = HibernateUtil.getSessionFactory().openSession();
    
    }
    
    private Session session;
    
    public void inserir(Usuario usuario)
    {
        
        Transaction t = session.beginTransaction();
        session.save(usuario);
        t.commit();
            
    }
    
    public List<Usuario> findAll(){
        
        return session.createQuery("from Usuario").list();
        
    }
    
     public Usuario findById(String id){
         
        return (Usuario) session.load(Usuario.class, id);
        
    }
     
     public int existeUsuario(String id)
     {
         
         int resposta = 0;
         
         Usuario usuario = new Usuario();
         
        try{

            usuario = this.findById(id);

            if (usuario.getLogin().trim().isEmpty())
            {
                resposta = 1;
            }
            else
            {
               resposta = 2; 
            }
            
        }
        catch (Exception ex)
        {
            
           resposta = 1;
           
        }

         return resposta;
         
     }
     
     public void update(Usuario usuario)
     {
         
         Transaction t  = session.beginTransaction();
         session.merge(usuario);
         t.commit();
         
     }
}
